go x/image/tiff: 压缩的tiff文件无效(至少在Mac OS X上是这样)

insrf1ej  于 6个月前  发布在  Go
关注(0)|答案(6)|浏览(55)

请在提交问题之前回答以下问题。谢谢!

您使用的Go版本是什么( go version )?

go版本 go1.10.3 darwin/amd64

这个问题在最新版本中是否重现?

我在go1.10上。

您正在使用什么操作系统和处理器架构( go env )?

GOARCH="amd64"
GOBIN=""
GOCACHE="/Users/xxx/Library/Caches/go-build"
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOOS="darwin"
GOPATH="/Users/xxx/projects/go"
GORACE=""
GOROOT="/usr/local/opt/go/libexec"
GOTMPDIR=""
GOTOOLDIR="/usr/local/opt/go/libexec/pkg/tool/darwin_amd64"
GCCGO="gccgo"
CC="clang"
CXX="clang++"
CGO_ENABLED="1"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/kc/_mt5mw0j5ksfg846hgllc5lr0000gn/T/go-build015281372=/tmp/go-build -gno-record-gcc-switches -fno-common"

您做了什么?

Here is a reproduction case.

您期望看到什么?

一个有效的白色tiff。

您实际看到了什么?

系统错误。

ux6nzvsh

ux6nzvsh1#

在Linux上可以正常工作。也许Mac OS X不支持TIFF压缩?

but5z9lq

but5z9lq3#

OS X绝对可以支持Deflate,至少在某些情况下是这样。这个问题可能与像素计数有关。当我设置width, height := 2104, 2736(宽度减半,高度相同)时,生成的压缩文件运行良好。

xdnvmnnf

xdnvmnnf4#

我想知道这是否与#24657有关。这个问题在灰度16位图像中已经解决了,但我刚刚意识到其他类型(包括RGBA64)也会遇到同样的问题。虽然这个问题影响了解码功能,但编码部分也可能存在类似的问题。

作为背景,我提到的问题出现在tiff内部定义的瓦片与图像总大小不完全对齐时。如果不相关,我会打开一个新问题来解决这个问题。

jpfvwuh4

jpfvwuh45#

你是否调查过这个问题?我希望使用golang生成tiff文件,但由于这个问题目前无法实现。

vd8tlhqk

vd8tlhqk6#

我认为你遇到的问题与encodeRGBA64有关,而我之前评论过的问题与解码功能有关。
无论如何,我在我的Mac(OS mojave)上运行了你的代码,并可以使用Preview打开这两个tiff文件(压缩和非压缩)。

很高兴帮助找出可能存在的问题。

相关问题