Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/261.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 用GDI&x2B加载CCITT T.6;位图类_C#_Bitmap_Gdi+ - Fatal编程技术网

C# 用GDI&x2B加载CCITT T.6;位图类

C# 用GDI&x2B加载CCITT T.6;位图类,c#,bitmap,gdi+,C#,Bitmap,Gdi+,我有一个问题,C#中的位图类无法正确加载CCITT T.6 Tiff文件,它会将其翻转,因此高度是宽度,宽度是高度 以前有没有人做过这些,并且知道正确的处理方法 编辑: 代码如下: Bitmap B = new Bitmap(@"C:\test2.tif"); Debug.WriteLine(B.Width); //returns 1728 Debug.WriteLine(B.Height); //returns 1127 当我在.net图片框中显示它时(SizeMod

我有一个问题,C#中的位图类无法正确加载CCITT T.6 Tiff文件,它会将其翻转,因此高度是宽度,宽度是高度

以前有没有人做过这些,并且知道正确的处理方法

编辑:

代码如下:

    Bitmap B = new Bitmap(@"C:\test2.tif");
    Debug.WriteLine(B.Width); //returns 1728
    Debug.WriteLine(B.Height); //returns 1127
当我在.net图片框中显示它时(SizeMode设置为Normal),它也显示不正确(拉伸)。但如果我用Windows照片查看器打开它,它会正确显示

以下是tiff文件中可用的标记:

    SubFileType (1 Long): Page
    ImageWidth (1 Long): 1728
    ImageLength (1 Long): 1127
    BitsPerSample (1 Short): 1
    Compression (1 Short): Group 4 Fax (aka CCITT FAX4)
    Photometric (1 Short): MinIsWhite
    FillOrder (1 Short): Lsb2Msb
    StripOffsets (1 Long): 8
    SamplesPerPixel (1 Short): 1
    RowsPerStrip (1 Long): 1127
    StripByteCounts (1 Long): 14764
    XResolution (1 Rational): 204
    YResolution (1 Rational): 98
    Group3Options (1 Long): 5
    ResolutionUnit (1 Short): Inch
    PageNumber (2 Short): 0, 0
    Software (32 ASCII): Windows NT Fax Server           
    CleanFaxData (1 Short): 0
    ConsecutiveBadFaxLines (1 Short): 0
    37680 (5632 Undefined): 
    40003 (26 ASCII): U.S. Robotics 56K FAX EXT 
    40005 (1 ASCII):  
    40046 (1 Long): 1
    40047 (1 Long): 4
    40048 (1 Long): 256
    40049 (1 Long): 18
    40051 (1 SRational): 
    40052 (1 SRational): 
    40053 (1 Long): 2

TIFF可以有一个标记,用于定义其在图像行中的数据方向。此标记在LibTiff中称为
TIFFTAG\u方向

一些值是:

  • 1=第0行表示图像的可视顶部,第0列表示可视左侧
  • 5=第0行表示图像的可视左侧,第0列表示可视顶部
根据这篇文章:

许多读者忽略了这个标签


我怀疑Microsoft.NET
位图类是这些阅读器之一,并且您的图像中包含该标记。

向我们显示您正在使用的代码。谢谢。这些tiff文件上似乎没有方向标志。他们必须有另一种方法来计算宽度和高度,我不确定,可用的属性是:254、256、257、258、259、262、266、273、277、278、279、282、283、292、296、297、327、328、37680、40001、40002、40003、40005、40046、40047、40048、40049、40051、40052、40053。我曾尝试使用256和257属性(高度和宽度),但它们似乎只返回位图类高度和宽度返回的值(这似乎不正确)。嗨,安德鲁,我对RIGHTFAX图像也有同样的问题。我能找到的唯一提示是,vert/horz的DPI的指定方式不同。问题是,一旦图像被保存,DPI就变得毫无意义。图像显示为压扁。你解决了这个问题吗。我试过使用LibTiff ReadRGBAImageOriented,但也有同样的问题?