Entries written in May 2005

ไม่จารึกไว้ … ไม่ได้แล้ว

Written by Oakyman on 26.05.2005 | Thai, football

We are the champions, my friend.
And we keep on fighting … to the end.

#

Milan Liverpool
3 - 3
Liverpool ( 3 - 2) win on penalties
Final - 25 May 2005 20:45 (CET)
Atatürk Olimpiyat - Istanbul

ของเจ๊งอีกแล้ว

Written by Oakyman on 05.05.2005 | Electronics, Japan, Thai

คราวนี้เป็นจอโน้ตบุ๊ค
เมื่อคืนยังใช้อยู่ดีๆ
วันนี้ตื่นมาตอนเที่ยง เปิดคอมปุ๊บ ตกใจหมดเลย
จอขาวโพลน

หลังจากเอาไปทดสอบกับจอ Monitor ภายนอกแล้ว เวิร์ค
(ยังดี นึกว่าจะไปทั้งเครื่อง)
เลยต้องหาเรื่องเสียตังค์ ไปซื้อจอ LCD มือสองมาจาก 秋葉原 (Akihabara)
เดินอยู่ประมาณชั่วโมง
หลังจากต้องอดกลั้นกับความยั่วยวนของพวกโน้ตบุ๊คมือสองที่ราคาชวนซื้อเหลือเกิน
ก็ไปเจอจอ LCD 15″ ของ Fujitsu ราคา 7,800 เยน
ที่ร้านเดียวกับที่ไอ้ปึ๊กเคยซื้อ (เจ้าของเป็นแขก ชาติไหนมิทราบ)

ตอนนี้โน้ตบุ๊คกลายสภาพเป็น Desktop ไปเรียบร้อย
เอาไว้ใต้โต๊ะ ซื้อ USB Keyboard มาด้วย

งวดหน้า ไปซื้อ Mac mini ดีฝ่า

ชนะแล้วว่อยยยสสส์ !!!

Written by Oakyman on 04.05.2005 | Thai, football

You’ll Never Walk Alone!!!
#

See you at Istanbul!!!
#

Upload รูปขึ้น Gallery เพิ่ม

Written by Oakyman on 04.05.2005 | Japan, Photo, Thai

花見(ฮานามิ)ของเดือนที่แล้ว กลางวัน กับ กลางคืน
แล้วก็กินเลี้ยงส่งคาโอริไปไต้หวันเมื่อปลายเดือน
หลังจากย่อ/ปรับ/ใส่กรอบ
แล้วก็ Upload ขึ้นไปใหม่รวม 3 อัลบั้ม

จะทยอยเอาของเก่าขึ้นเรื่อยๆ

ImageMagick Revisited

Written by Oakyman on 03.05.2005 | Programming, Software, Thai

นั่งเขียน Perl Script ที่เรียกใช้ ImageMagick อีกที เพื่อจะย่อรูป/ทำกรอบ/แต่งรูปเล็กน้อย (Auto contrast/Unsharp Mask)
จริงๆ มันมี Module PerlMagick ให้ใช้ด้วย แต่ขี้เกียจดู
ตอนแรกว่าจะเขียนด้วย Batch file แต่ข้อจำกัดเยอะมาก

หา Option ใหม่ได้คือ

  • -equalize แต่ใช้แล้วสีเพี้ยน ยังหาวิธีแก้ไม่ได้
  • -gamma ใช้แล้วสว่างไปหน่อย
  • -encoding เซ็ตเป็น UTF-8 หรือ SJIS อะไรงี้ได้ แต่ภาษาไทยต้องใช้ UTF-8 เท่านั้น

เรื่องของเรื่องคืน ขี้เกียจมานั่งปรับ Photoshop ทีละอัน
แล้ว Action ใน Photoshop มันก็ไม่ยืดหยุ่นด้วย

Link อ้างอิงที่น่าสนใจ

ตัวโปรแกรมตั้งชื่อว่า batchframe.pl
คุณสมบัติคือ
- Normalize histogram
- ถ้าใช้ Option -eq ก็จัดการใช้ -equalize เวลาเรียก convert ของ ImageMagick ด้วย
- ย่อรูป
- Crop รูป
- Unsharp Mask
- ทำกรอบสีขาว
- มุมล่างขวาใส่ Copyright text
- ถ้าใช้ Option -text “any text” ที่มุมล่างซ้ายก็ใส่ custom text ด้วย

* Detect ได้ด้วยว่าเป็นรูปแนวตั้งหรือแนวนอน
** Setting อื่นๆ อย่างขนาดภาพที่ต้องการ หรือ Font นี่ แก้เองใน Script

#!/usr/bin/perl

#!/usr/bin/perl

# fix for Windows only
use File::Glob qw(:glob);
use POSIX qw(ceil floor);

$usage = "usage: batchframe.pl [-eq] [-lev black,white] [-gam gamma] [-sat saturation] [-nonorm] [-text "Text"] filename\n";

$equalize = 0;
$fullmajorsize = 1024;
$fullminorsize = floor($fullmajorsize * 3 / 4);
$borderratio = 2.5;
$inborder = 2;
$border = floor($fullmajorsize * 2.5 / 100);
$size = $fullmajorsize - ($border * 2);
$minorsize = $fullminorsize - ($border * 2);
$fontsize = floor($border * 0.75);
$border -= $inborder;
$type = "Bookman-Old-Style";
$outputdir = "edited";
$unsharp = $fullmajorsize * 0.500 / 100;

$norm = "-normalize";
$equalize = "";
$modulate = "";
$gamma = "";
$level = "";

while($#ARGV > 0) {
	if($ARGV[0] eq "-eq") {
		$equalize = "-equalize";
		shift @ARGV;
	} elsif($ARGV[0] eq "-nonorm") {
		shift @ARGV;
		$norm = "";
	} elsif($ARGV[0] eq "-text") {
		shift @ARGV;
		$text = shift @ARGV;
	} elsif($ARGV[0] eq "-sat") {
		shift @ARGV;
		$sat = shift @ARGV;
		$modulate = "-modulate 100,$sat";
	} elsif($ARGV[0] eq "-lev") {
		shift @ARGV;
		$level = shift @ARGV;
		$level = "-level $level";
	} elsif($ARGV[0] eq "-gam") {
		shift @ARGV;
		$gam = shift @ARGV;
		# pantip post = 1.2
		$gamma = "-gamma $gam";
	} elsif($ARGV[0] eq "-h") {
		print $usage;
		exit(0);
	}
}

if($#ARGV == 0 && $ARGV[0] =~ /^-/) {
	print $usage;
	exit(0);
}

if($#ARGV < 0) {
	print $usage;
	exit(0);
}

print "target size = ${fullmajorsize}x${fullminorsize}\n";
print "border = $border\n";
print "size (w/o border) = ${size}x${minorsize}\n";
print "font = $type $fontsize\n";
print "unsharp = $unsharp\n";
print "text = $text\n" if($text ne "");
print "saturation = $sat%\n" if($sat ne "");
print "do not apply -normalize\n" if($norm eq "");
print "apply -equalize\n" if($equalize ne "");
print "$level\n" if($level ne "");
print "gamma = $gam\n" if($gamma ne "");

if(! -e $outputdir) {
	mkdir $outputdir;
}

# Normal way to do
# foreach $_ (@ARGV) {

# fix for Windows only
foreach $_ (bsd_glob($ARGV[$#ARGV], GLOB_NOCASE)) {
	$in = $_;
	$out = $outputdir."\".$in;

	$width = `identify -format "%w" $in`;
	chomp($width);
	$height = `identify -format "%h" $in`;
	chomp($height);

	#print "${width}x${height} ";
	if($width > $height) {
		#print "lanscape\n";
		$cropstring = " -crop ${size}x${minorsize}-0-0 ";
	} else {
		#print "portrait\n";
		$cropstring = " -crop ${minorsize}x${size}-0-0 ";
	}

	$convertcmd = "convert $in $norm $gamma $modulate $level $equalize -resize ${size}x$size $cropstring -unsharp $unsharp -bordercolor black -border $inborder -bordercolor white -border $border -gravity southeast -font $type -pointsize $fontsize -fill black -annotate 0x0+$border+2 "© Oakyman - Issara Thienlikit" -gravity southwest -annotate 0x0+$border+2 "$text" $out
";
	print "$in --> $out\n";
	`$convertcmd`;
}

เอาหละ เตรียม Upload รูปที่แต่งแล้วขึ้น Fotki

Archive Details

There are currently 71 posts contained within categories. Have fun digging.