Chuyển đến nội dung chính

Chuyển ảnh thành code HTML với PHP

Bài này mình sẽ giới thiệu với mọi người cách chuyển đổi hình ảnh sang code HTML với PHP. Demo sẽ như sau:


1, Thuật toán.
-Thuật toán xử lý hết sức đơn giản với cách thực hiện như sau:

+ Đầu chúng ta sẽ lấy ra hình ảnh cần quét. Và xác định chiều rộng và chiều dài của ảnh.

+ Sau đó chúng ta sẽ thực hiện lặp từng pixel của ảnh từ trái qua phải và từ trên xuống dưới để lấy mã màu (dạng RGB) của từng điểm ảnh.

+ Và khi có được mã màu rồi thì chúng ta sẽ vẽ nó theo code HTML của chúng ta với mỗi điểm ảnh tương ứng với một thẻ span.


-> Đấy đơn giản đúng không giờ mình cùng đi vào thực hành xem thế nào.

2, Thực hành thuật toán.
-Mình sẽ giải thích trong code luôn nhé!

<?php
//Lấy file ảnh từ máy
// Nếu ảnh png thì dùng hàm ImageCreateFrompng
// $img = ImageCreateFrompng('ha-noi.png');

//Nếu ảnh jpg thì dùng hàm ImageCreateFromJpeg
$image = ImageCreateFromJpeg('ha-noi.jpg');

// Lấy ra chiều rộng của ảnh.
$widthImage = imagesx($image);

//Lấy ra chiều cao của ảnh
$heightImage = imagesy($image);

//Lặp chiều cao của ảnh
for ($height = 0; $height < $heightImage; $height++) {

//Lặp chiều rộng của ảnh (Lấy dư ra một để xuống dòng)
for ($width = 0; $width <= $widthImage; $width++) {
//Nếu vị chí hiện tại bằng chiều rộng của ảnh
//thì xuống dòng và tiếp tục.
if ($width == $widthImage) {
echo '<br>';
continue;
}
// Lấy ra màu của điểm ảnh hiện tại
$rgb = ImageColorAt($image, $width, $height);

//Chuyển đổi màu sang dạng RGB.
//chuyển sang red
$red = ($rgb >> 16) & 0xFF;

//Chuyển sang Green
$green = ($rgb >> 8 ) & 0xFF;

//Chuyển sang Blue
$blue = $rgb & 0xFF;

//Hiển thị màu của ảnh dưới dạng html
echo '<span style="font-size:1px;color:rgb(' . $red . ',' . $green . ',' . $blue . ');">#</span>';

}
}

VD: Mình sẽ thử với bức ảnh:


Xem Kết Quả

3, Lời kết.
-Như vậy mình đã giới thiệu với mọi người cách chuyển đổi hình ảnh sang code HTML bằng PHP rồi. Tuy nhiên, cách này chỉ dùng chơi được thôi chứ áp dụng vào thực tế thì hoàn toàn không ổn, vì nó sử dụng quá nhiều tài nguyên (lặp dữ liệu quá nhiều).

Nguồn : Toidicode.com

Nhận xét

  1. Trả lời
    1. Hehe, quảng cáo nhiều mới kiếm thật nhiều xiền =)))

      Xóa
  2. sao cảm thấy vào blog này nó u ám sao sao ấy :D

    Trả lờiXóa
    Trả lời
    1. Thế hả @@ vậy chắc để mình chuyển sang tem đơn giản khác :( nếu ông có tem nào đơn giản mà chuẩn seo thì send cho m` với :(

      Xóa
  3. Sao m không thấy kq bạn? nhìn thấy mỗi hình ảnh bên tay trái thôi chứ ảnh kiểu html thì ko thấy ? vậy là sao bạn? :?

    Trả lờiXóa
  4. Dạo này ko thấy ra bài mới nhỉ :)

    Trả lờiXóa
  5. Thưa Sếp NIỆM với sếp HƯNG, dạo này HÙNG lu bu với công việc quá + đang tìm hiểu để viết code ẩn danh khi chia sẽ những bài quan trọng cho những ai mình muốn chia sẽ biết thôi, tóm lại là thế đó :D, hehe sẽ có bài đăng mới trong thời gian sớm nhất :D : ẩn danh => andanh.hungcoder.com :)

    Trả lờiXóa

Đăng nhận xét

Bài đăng phổ biến từ blog này

[Blogger] Gỡ bỏ bản quyền template Blogspot không bị chuyển hướng

Xin chào các blogger, hẳn khi làm blog bạn chẳng còn xa lạ gì những trang cung cấp template nổi tiếng như soratemplates, gooyaabitemplates,... đúng không. Mỗi khi bạn tải template về thường có 2 tùy chọn đó là bản free và bản premium. Sự khác biệt giữa chúng là quá rõ ràng kể đến như support hoặc mã hóa code,...


Dân nghèo như chúng ta thường chỉ chơi bản free thôi, và đương nhiên sẽ có nhiều template dính quả bản quyền thần chưởng, ở đó thì họ thường gắn tên vào cuối footer và khi ta xóa dòng đó đi web site sẽ tự động chuyển hướng tới trang chủ của họ. Nói chung ta không nên xóa bản quyền template đi vì đó thể hiện sự tôn trọng tới người đã tạo ra template cho ta sử dụng.

Còn trong khuôn khổ bài viết này hung1001 sẽ cùng bạn tìm hiểu cách gỡ và thêm bản quyền của bạn vào nếu như bạn thích.


Ở đây tôi làm mẫu với template Treasury của Sora bản free. Đây là dòng tác giả đã chèn bản quyền và có đoạn js điều hướng nếu dòng bị xóa


Nhiệm vụ của bạn đó là đi dò toàn bộ các đoạn mã js đã bị mã hó…

[Blogger] Tạo hiệu ứng tuyết rơi chào đón Noel cho blogspot

Noel sắp đến để tăng thêm hiệu ứng cho blog của bạn hãy thêm vào 1 chút hiệu ứng tuyết rơi để cho không khí thêm sôi động


Cách làm cực kì đơn giản:

Đăng nhập vào blogChọn mẫu và vào phần chỉnh sửa htmlBạn để đoạn code sau vào giữa cặp thẻ <body> ... </body>
<script src='https://cdn.rawgit.com/hung1001/blogspot/master/js/tuyetroi.js'/>

Code nhúng trực tiếp vào web không thông qua host

<script type="text/javascript">
//<![CDATA[
var snowmax=100
var snowcolor=new Array("#f2f8fa","#eff5f7","#dcedf1","#ffffff")
var snowtype=new Array("Times","Arial","Times","Verdana")
var snowletter="*"
var sinkspeed=1
var snowmaxsize=30
var snowminsize=20
// Set 1 for all-over-snowing, set 2 for left-side-snowing
// Set 3 for center-snowing, set 4 for right-side-snowing
var snowingzone=1
// Do not edit below this line
var snow=new Array()
var marginbottom
var marginright
var timer
var i_snow=0
v…

Share Template Mudah Grid Responsive.

Chào mọi người, dạo gần đây mình thấy có một bản mẫu blogspot đi kèm với một giao diện khá thân thiện nên mình cũng đem về rồi nhờ người anh em thân thiết xóa cái bản quyền template đi rồi share cho anh em dùng.  ƯU ĐIỂMLoad nhanhSEO tốtChuẩn responsiveRecent labelButton ShareFollow by emailBreadcrumbs...NHƯỢC ĐIỂMThì mình chưa tìm ra. Cách nhận template- Comment link share trên mạng xã hội ( tùy tâm ) - Comment mail phía dưới. Lưu ý: Bản này hoàn toàn đã xóa bản quyền rồi nhé.
Xem Demo