มาลองทำโปสเตอร์หนังด้วย Mathematica

ที่จะทำก็คือจะดึงภาพโปสเตอร์ของหนังจากเวบเช่น
http://www.majorcineplex.com/movie_all.php

มารวมกันทำเป็นรูปโปสเตอร์อันใหม่โดยอาศัยMathematicaดูครับ (จริงๆก็แค่ ก๊อปภาพแล้วไปแปะในโปรแกรมอย่าง Paint ก็ได้ครับ ง่ายกว่าด้วยไม่ต้องเขียน code ให้ปวดหัว hahaha)

 อันนี้เป็นตัวอย่าง Mathematica ที่ลองเขียนขึ้นครับ

webpage=StringSplit[Import[“http://www.majorcineplex.com/movie_all.php“, “Source”]];

movieurl=Select[webpage,StringLength[#] >= 5 &&StringMatchQ[#, “src” ~~ ___ ~~ “cropImage” ~~ __] &];

importPoster[movieurl_] := Module[{url},url = “http://www.majorcineplex.com/” <> StringDrop[movieurl, 5];    Import[url] ];

movie10=importPoster[#] & /@ movieurl[[1 ;; 15]];

imagegrid =ImageAssemble[Partition[movie10, 5] /. x_Image :> ImagePad[ImagePad[ImageResize[x, {512, 755}], 3, White], 20,  Black]];

ImageResize[ImagePad[imagegrid, 150, Black], {800, 600}]

 

———–

ดูเหมือนหลายคนจะเข้ามาอ่านที่ผมโพสเยอะพอสมควร  codesที่ผมเขียนด้านบนนี้มันใช้ไม่ได้แล้วครับ เนื่องจากว่าทางเจ้าของเวบเค้าได้เปลี่ยนรูปแบบของเวบไปแล้ว (เช็คเมื่อวันที่ 1 สิงหาคม 2555) แต่ถ้าอยากลองเล่น ลองดูcodesด้านล่างนี้นะครับ

webpage = Import[“http://www.majorcineplex.com”, “ImageLinks“];
movieurl = Select[webpage,StringMatchQ[#,”http://” ~~ __ ~~ “uploads” ~~ __ ~~ “jpg” ~~ __]&];
movie10 = Import[#] & /@ movieurl[[1 ;; 10]];

imagegrid =ImageAssemble[Partition[movie10, 5] /. x_Image :> ImagePad[ImagePad[ImageResize[x, {512, 755}], 3, White], 20, Black]];

ImageResize[ImagePad[imagegrid,100,Black],{800,450}]