R 中的 readChar 无法读取 tiff 标签

readChar in R is unable to read the tiff tag

我正在尝试读取小端格式的 tiff 文件。在图像文件目录中,第一个标记值是 0100(十六进制)。当我试图读取这 2 个字节时,它给出了以下结果。

>readChar(fptr,nchars=2,TRUE)
[1] ""
But when i read single bytes then it correctly gives
>readChar(fptr,nchars=1,TRUE)
[1] ""
>readChar(fptr,nchars=1,TRUE)
[1] "[=10=]1"
>

这是一个 tiff 文件:

filename <- "test.tiff"
tiff(filename)
plot(1)
dev.off()

您可以使用 readBin.

作为原始字节读取它
n <- file.info(filename)$size
bytes <- readBin(filename, raw(), n = n)

您可能更喜欢使用 tiff::readTIFF 阅读它。

library(tiff)
the_plot <- readTIFF(filename)

然后您可以使用 rasterImage.

将其包含在您的其他地块中
plot(1, 1, 'n')
rasterImage(the_plot, 0.8, 0.8, 1.2, 1.2)