Image png = Image.getInstance(\
ͬʾÀý´úÂë0601µÄÇø±ðÖ»ÊǸÃͼÏó´Ó±¾µØ»ñÈ¡¶øÒÑ£¬ÁíÍâÒ»¸öÀý×Ó¼ûʾÀý´úÂë0603¡£
ͼƬµÄλÖÃ
? ¶ÔÆë·½Ê½
ͨ¹ýÏÂÃæ·½·¨ÉèÖÃͼƬµÄ¶ÔÆë·½Ê½£º Alignment = Image.RIGHT Alignment = Image.MIDDLE Alignment = Image.LEFT ²Î¼ûʾÀý´úÂë0604¡£
ÎÒÃǽ«VonnegutµÄͼƬ·ÅÔÚÓұߣ¬Ð¡º¢µÄͼƬ·ÅÔÚÖм䣬hitchcockµÄͼƬ·ÅÔÚ×ó±ß¡£ ? ͼƬºÍÎı¾
ÁíÍ⣬Ä㻹¿ÉÒÔÖ¸¶¨Îı¾Ïà¶ÔͼƬµÄ»·ÈÆ·½Ê½£º Alignment = Image.RIGHT | Image.TEXTWRAP Alignment = Image.MIDDLE
Alignment = Image.LEFT | Image.UNDERLYING
¼ûʾÀý´úÂë0506£¬ÎÄ×ÖÔÚVonnegutͼƬµÄ×ó²à£¬²¢²»ÔÚÎÒСº¢µÄͼ´¦»·ÈÆ£¬ÇÒÅÅÔÚHitchcockͼƬµÄÉÏÃæ¡£ ˵Ã÷£º¸Ã¹¦ÄÜÉÐÓÐһЩBUG¡£ ? ¾ø¶ÔλÖÃ
µ±ÖÆ×÷PDFÎļþʱ£¬Äã¿ÉÄÜÓõ½¸Ã·½·¨£º
public void setAbsolutePosition(int absoluteX, int absoluteY) ½«Ò»¸öͼƬ·ÅÒªÒ³ÃæÉÏÒ»¸ö¾ø¶ÔλÖõĴúÂë¼ûʾÀý´úÂë0606£¬ÎÒÃÇÔÚ²»Í¬µÄ×ø±ê´¦Ìí¼ÓÁËÁ½·ùͼƬ£¬ÕâÀïʹÓøø¶¨µÄ×ø±ê½«Í¼Æ¬·ÅÔÚÁË×óϽǣ¬Í¨¹ý½«Í¼Æ¬µÄ¿í¶ÈºÍ¸ß¶È×÷ΪXºÍY×ø±ê½«ÉèÖõÚÒ»¸öͼƬ£¬×ø±êµÄ2±¶ÉèÖõڶþ¸öͼƬ¡£
Ëõ·ÅºÍÐýתͼƬ
? Ëõ·Å
Óм¸ÖÖ°ì·¨¿ÉÒÔËõ·ÅͼƬ£º
public void scaleAbsolute(int newWidth, int newHeight) public void scalePercent(int percent)
public void scalePercent(int percentX, int percentY) public void scaleToFit(int fitWidth, int fitHeight)
Сº¢µÄͼƬ´óСΪ194¡Á202ÏóËØ£¬Èç¹ûÄãÏëÈÃͼƬСһЩ£¬Äã¿ÉÒÔͨ¹ýscaleAbsolute(97, 101)½øÐÐËõ·Å£¬Ê¹ÓÃscalePercent(50)Ò²Äܵ½´ïͬÑùµÄЧ¹û¡£
»¹¿ÉÒÔͨ¹ýscaleAbsolute(194, 101)À´¼õС£¬ËùÒÔÕâЩÀý×Ó¶¼·ÅÔÚÁËʾÀý´úÂë0607ÖС£ ? ¶Ô·Ö±æÂʵÄÓ°Ïì
Èç¹ûÒ»¸öͼƬ²»¾ÈκÎËõ·Å£¬Æä·Ö±æÂÊ£¨resolution£©Îª72£¬Èç¹û¸ÃͼƬËõ·Å±ÈÀýΪ50£¥£¬Ôò·Ö±æÂÊΪ144£¬Èç¹ûÓиüµÍµÄËõ·Å±È£¬Ôò·Ö±æÂʽ«¸ü´ó£¬ÒòΪÏóËØÏàͬµ«³ß´ç±äµÃ¸üСÁË¡£Ê¹ÓÃ72/300=24£¥µÄ±ÈÀý·ÅÖÃÒ»¸ö300dpiµÄͼƬ£¬Àý£ºÄãÓÃ300dpiɨÃèÁËÒ»¸ö5¡Á5Ó¢´çµÄͼƬ£¬Í¼Æ¬½á¹ûΪ1500¡Á1500ÏóËØ£¨5¡Á300£©£¬µ±ÄãÓÃ24£¥£¨72/300=0.24£©µÄ±ÈÀý½«¸ÃͼƬ·ÅÖõ½PDFÎļþÖÐʱ£¬PDFÖеÄͼƬ½«Îª5¡Á5Ó¢´ç1500X1500ÏóËØ300dpi£¬¸ÃͼƬ½«Ê¼ÖÕΪ1500X1500ÏóËØ¶ø²»¹Ü³ß´çÈçºÎ¡£ ? Ðýת
¿ÉÒÔͨ¹ýÏÂÃæµÄ·½·¨ÐýתͼƬ public void setRotation(double r) Ïê¼ûʾÀý´úÂë0608¡£
ÔʼͼƬÊý¾Ý
µ½Ä¿Ç°ÎªÖ¹£¬ËùÓÐÀý×ÓÖÐʹÓõÄͼƬ¾ùÀ´×Եر¾µØ´ÅÅÌ»òÕßij¸öÍøÕ¾£¬µ«Ò²¿ÉÄÜʹÓðüº¬Í¼Æ¬ÐÅÏ¢µÄÊý×éÀ´µÃµ½Í¼Æ¬µÄʵÀý£º
public static Image getInstance(byte[] img)
¸Ã·½·¨Í¬Ç°Ãæ·½·¨µÄЧ¹ûÏàͬ£¬·µ»ØÒ»¸öеÄGif,Jpeg»òÕßPngÀà±ðµÄImage¶ÔÏó¡£
ÔÚʾÀý´úÂë0609ÖУ¬ÎÒÃÇÌí¼ÓÒ»¸ö´ÓÒ»¸öJpegÎļþÖжÁÈëµ½×Ö½ÚÊý×éÖеÄͼƬ£¬ºÜÃ÷ÏÔ£¬Ê¹ÓÃÆäËûgetInstance·½·¨µÃµ½ÊµÀý¸üÓÅÔ½£¬µ«Õâ½ö½öÊÇÒ»¸öÀý×Ó£¬¸ÃgetInstance·½·¨ÔÚ¶¯Ì¬´´½¨ÄÇЩ¸ù±¾²»´æÔÚµÄͼƬʱ·Ç³£ÓÐÓᣠ¸ÃÀý×ÓÒ²ÑÝʾÁËÈçºÎ´´½¨ºÍʹÓÃÒ»¸öÔʼͼƬ¡£
public static Image getInstance(int width, int height, int components, int bpc, byte data[])
±¾ÀýÖд´½¨ÁËÒ»¸ö100¡Á100ÏóËØµÄͼƬ£¬ÒòΪÿ¸öÏóËØÓÃRGBÃèÊö£¬ËùÒÔͼƬ´óСΪ100¡Á100¡Á3×Ö½Ú¡£
System.Drawing.Bitmap
ʾÀý´úÂë0610ÊÇÒ»¸ö±È½Ï¸ß¼¶µÄ»°Ì⣬ÀíÓÉÈçÏ£º
1. Ê×´ÎʹÓõ½ÁËSystem.Drawing.BitmapÀà¡£¸ÃÀàÔÚ.net¿ò¼ÜÖУ¬¿ÉÒÔʹÓøü¶àÀàÐ͵ÄͼƬ£¬
ÈçTIFF¡¢GIF£¬¶øÕâЩͼƬÔÚiTextÖоù²»Ö§³Ö£¬Äã¿ÉÒÔ¼ì²éÒ»ÏÂ.net¿ò¼Ü¿´¿´ÄãÐèÒªµÄͼƬ¸ñʽÊÇ·ñµÃµ½Ö§³Ö¡£
2. Ç°ÃæµÄÀý×ÓÖУ¬»¹ÓÐһЩÊÂÇéҪעÒ⣺µ±Ìí¼ÓÒ»¸öͼƬʱ²»»á³öÏÖʲôÎÊÌ⣬ÎÄ×ÖʼÖÕ¸¡ÓÚͼƬ
ÉÏÃæ£¬±¾ÀýÖУ¬ÎÒÃÇÏ£ÍûͼƬ¸¡ÔÚÎÄ×ÖÉÏÃæ¡£ÕâÒ²ÊÇΪʲôÎÒÃǽ«Ê¹ÓÃiTextSharp.text.pdf.PdfContentByteÀàµÄÔÒò£¨¼ûµÚʮգ©¡£ 3. Ä㽫·¢ÏÖʹÓõÄͼƬΪ͸Ã÷µÄgif¸ñʽ£¬Äã¿ÉÒÔµ½
http://itextsharp.sourceforge.net/examples/h.gifÏÂÔØµÃµ½¡£
TIFFºÍCCITT
ʾÀý´úÂë0611Ò²ÊÇÒ»¸ö±È½Ï¸ß¼¶µÄ»°Ì⣬ÀýÖÐת»»Ò»¸öTIFFÎļþµ½PDFÎļþ¡£
? ͼƬÕÚÕÖ
ʾÀý´úÂë0613ÔÚ£¬ÎÒÃÇ´´½¨ÁËÒ»¸öÓÃ×÷ÕÚÕÖµÄͼƬ
3C
¸ÃͼƬ³ß´çΪ8¡Á8ÏóËØ£¬Ã¿×éÒ»¸ö×Ö½Ú£¬Ê¹ÓÃmakeMask()·½·¨¿ÉÒÔת»»³ÉÕÚÕÖ¡£
byte maskr[] = {(byte)0x3c, (byte)0x7e, (byte)0xe7, (byte)0xc3, (byte)0xc3, (byte)0xe7, (byte)0x7e, (byte)0x3c}; Image mask = Image.getInstance(8, 8, 1, 1, maskr); mask.makeMask();
mask.setInvertMask(true);
ÎÒÃÇ¿ÉÒÔÓøÃÕÚÕÖÖ±½ÓÕÚסÆäËûͼƬµÄÒ»²¿·Ö¡£ PdfContentByte cb = writer.DirectContent; Image image = Image.getInstance(\image.ImageMask = mask;
»òÕßÎÒÃǽ«¸ÃÕÚÕÖÓÃÓÚÄ£°åÕÚ×ïÖС£
PdfContentByte cb = writer.DirectContent; cb.setRGBColorFill(255, 0, 0);
7E E7 C3 C3 E7 7E 3C