我如何避免Github在readme.md中旋转我的jpg?

时间:2013-10-17 18:08:08

标签: github orientation jpeg markdown github-flavored-markdown

我在github上的readme.md中添加了一个图像引用。图片是纵向格式照片,但是当我在github页面上查看时,图片会旋转。

我已经尝试将回购克隆到新位置以确认图片确实仍然是回购中预期的肖像。

readme.md的图像部分:

Here is a picture of the hardware setup. ![picture of the hardware setup](HelloButtonModule.jpg)

这是affected github repo

更新

现在我感到很困惑,我试图在new repo中简化问题,但图片显示为未预期的(最初)预期。

更新

我创建了一个repo with an exact copy of the picture。然后旋转图片。

4 个答案:

答案 0 :(得分:12)

您可以尝试只打开文件,然后重新保存。在保存之前,您可能需要旋转360度,但这应该可以。

答案 1 :(得分:5)

如果您使用的是基于Debian的发行版,则可以使用exiftran

sudo apt-get install exiftran
exiftran -ai *.jpg

这将根据exif数据自动旋转所有.jpg文件。

我跑了

git clone https://github.com/steenhulthin/HelloButtonModule/
cd HelloButtonModule/
exif HelloButtonModule.jpg

这产生了:

EXIF tags in 'HelloButtonModule.jpg' ('Motorola' byte order):
--------------------+----------------------------------------------------------
Tag                 |Value
--------------------+----------------------------------------------------------
Image Width         |4128
Image Length        |2322
Manufacturer        |SAMSUNG
Model               |GT-I9505
Orientation         |Top-left
X-Resolution        |72
Y-Resolution        |72
Resolution Unit     |Inch
Software            |I9505XXUDMH8
Date and Time       |2013:10:16 23:22:57
YCbCr Positioning   |Centred
Image Width         |512
Image Length        |288
Compression         |JPEG compression
Orientation         |Right-top
X-Resolution        |72
Y-Resolution        |72
Resolution Unit     |Inch
Exposure Time       |1/33 sec.
F-Number            |f/2.2
Exposure Program    |Normal programme
ISO Speed Ratings   |100
Exif Version        |Exif Version 2.2
Date and Time (Origi|2013:10:16 23:22:57
Date and Time (Digit|2013:10:16 23:22:57
Components Configura|Y Cb Cr -
Shutter Speed       |5.06 EV (1/33 sec.)
Aperture            |2.28 EV (f/2.2)
Brightness          |2.44 EV (18.56 cd/m^2)
Exposure Bias       |0.00 EV
Maximum Aperture Val|2.28 EV (f/2.2)
Metering Mode       |Centre-weighted average
Light Source        |Unknown
Flash               |Flash did not fire
Focal Length        |4.2 mm
Maker Note          |98 bytes undefined data
User Comment        |METADATA-START
FlashPixVersion     |FlashPix Version 1.0
Colour Space        |sRGB
Pixel X Dimension   |4128
Pixel Y Dimension   |2322
Sensing Method      |One-chip colour area sensor

如您所见,Orientation标签显示在左上角。这意味着EXIF数据不会对旋转产生影响,即图像在您的计算机和Github上显示相同。

然后我跑了

git clone https://github.com/steenhulthin/githubreadmeimagerotation2
cd githubreadmeimagerotation2/
exif HelloButtonModule.jpg

我得到了:

EXIF tags in 'HelloButtonModule.jpg' ('Intel' byte order):
--------------------+----------------------------------------------------------
Tag                 |Value
--------------------+----------------------------------------------------------
Image Width         |4128
Image Length        |2322
Manufacturer        |SAMSUNG
Model               |GT-I9505
Orientation         |Right-top
X-Resolution        |72
Y-Resolution        |72
Resolution Unit     |Inch
Software            |I9505XXUDMH8
Date and Time       |2013:10:16 23:22:57
YCbCr Positioning   |Centred
Image Width         |512
Image Length        |288
Compression         |JPEG compression
Orientation         |Right-top
X-Resolution        |72
Y-Resolution        |72
Resolution Unit     |Inch
Exposure Time       |1/33 sec.
F-Number            |f/2.2
Exposure Program    |Normal programme
ISO Speed Ratings   |100
Exif Version        |Exif Version 2.2
Date and Time (Origi|2013:10:16 23:22:57
Date and Time (Digit|2013:10:16 23:22:57
Components Configura|Y Cb Cr -
Shutter Speed       |5.06 EV (1/33 sec.)
Aperture            |2.28 EV (f/2.2)
Brightness          |2.44 EV (18.56 cd/m^2)
Exposure Bias       |0.00 EV
Maximum Aperture Val|2.28 EV (f/2.2)
Metering Mode       |Centre-weighted average
Light Source        |Unknown
Flash               |Flash did not fire
Focal Length        |4.2 mm
Maker Note          |98 bytes undefined data
User Comment        |METADATA-START
FlashPixVersion     |FlashPix Version 1.0
Colour Space        |sRGB
Pixel X Dimension   |4128
Pixel Y Dimension   |2322
Sensing Method      |One-chip colour area sensor

此处的方向为Right-top,表示图片的右上角目前位于左上角。 Github不承认此信息,因此您的图像显示不正确。

然后我运行了exiftran -ai HelloButtonModule.jpg,这解决了问题。这里有一个叉子https://github.com/texasflood/githubreadmeimagerotation2,显示图像的正确旋转。

如果您使用的是Windows,IrfanView可能会有效,请提出这个问题:https://superuser.com/questions/36645/how-to-rotate-images-automatically-based-on-exif-data

答案 2 :(得分:4)

我认为这是由于github缺少对EXIF“Orientation”标签的支持。

Github显示JPEG文件中包含的图像数据,这是相机光电传感器捕获它们的方向。此外,JPEG文件包含一个EXIF标签“Orientation”,其中包含值“right,top”,表示图像数据不是按原样解释,而是右侧实际应该是up。显然,github不尊重这个标签。

第二个存储库中的图像与第一个存储库中的图像不同,但似乎已经过编辑以添加红色箭头和文本。我的猜测是编辑器在加载过程中解释了“Orientation”标签,然后以旋转的形式保存了图像数据,并且“Orientation”标签值为“top,left”。

有关详细信息,请参阅例如JPEG Rotation and EXIF Orientation

答案 3 :(得分:2)

我仍然不明白为什么会发生这种情况(@ A.Donda的解释听起来似乎有道理),但我找到了解决方案。

将图片调整为原始picture is no longer rotated的50%。

我仍然很乐意知道是否有其他方法可以调整大小。