我如何将TIFF图像数据传递给JUCE(不支持TIFF)
How can I pass TIFF image data to JUCE (which does not support TIFF)?
我正在使用c++ JUCE库学习gui编程。该库支持图像文件格式(png, jpg)。但是我想学习如何使用其他文件格式,例如tiff。
google之后我得到了libtiff。
我的问题是显示这个的准确方法是什么。我是否需要将。tiff文件转换为jpeg/png从tiff这样做。
但是我认为这需要重复处理。
谁能解释一下原始/原生/基本图像文件格式,以便我需要将所有图像转换为该类型并直接使用它。
我在winAPI中发现了一些东西,用于处理图像,其中他们使用文件格式的图像数据。
如果有人能让我知道处理图像数据和显示它的方法,那将是非常有帮助的。
谁能解释一下原始/原生/基本图像文件格式,以便我需要将所有图像转换为该类型并直接使用它。
没有"原生"图像文件格式,但RGB很接近(特别是如果你去掉标题,只给出一个Width×Height×Channels像素值数组)。您可能不希望使用它来存储所有内容,因为您的缓冲区将非常大。让你的库处理存储
如果有人能让我知道处理图像数据和显示它的方法,那将是非常有帮助的。
没有"the"方法。c++本身并没有提到任何关于图像的内容,并且有很多方法可以使用它们。您的设计将取决于您的功能需求规范和可用的库。
我正在使用c++ JUCE库学习gui编程。那库支持图像文件格式(png, jpg)。但是我想学习如何使用其他文件格式,例如tiff。
google之后我得到了libtiff。
我的问题是显示这个的准确方法是什么。我是否需要将。tiff文件从tiff转换为jpeg/png这个。
但我认为这需要重复处理。
如果您的意思是使用libtiff将tiff格式的图像转换为JUCE支持的格式,那么您说这会引入额外的初始处理步骤是对的。然而,正如你所说的那样,听起来任何可能的性能损失都将被简单性和清晰度的好处大大抵消。所以我要这样做
为了读取*.tiff图像并在JUCE框架构建的应用程序中使用它们,我建议创建一个从基本接口ImageFileFormat派生的新类。
class MyTiffFormat : public ImageFileFormat
{
private:
MyTiffFormat( const MyTiffFormat& );
MyTiffFormat& operator=( const MyTiffFormat& );
public:
MyTiffFormat();
~MyTiffformat();
const String getFormatName();
bool canUnderStand();
Image decodeImage( InputStream& input );
bool writeImageToStream( const Image& source, OuptputStream& dest );
};
实现Image decodeImage(InputSTeram&输入)"是您需要libtiff之类的东西的关键。在JUCE源代码树中,您将在文件夹 JUCE srcguigraphicsimaging
中找到PNG和其他支持格式的实现。关于扩展JUCE功能的更多信息可以在JUCE用户论坛中找到。
Juce可以很好地处理png, jpg和gif(非动画),它们可以从文件中读取,甚至可以使用BinaryBuilder"编译"。
例如用BinaryBuilder从编译后的c++中加载。
someImage = ImageFileFormat::loadFrom (AppResources::image_png, AppResources::image_pngSize);
查看氧气文档,它们很有帮助。使用BinaryBuilder编译图像的语法是:
./BinaryBuilder someFolder otherFolder ClassName
- 如何在 OpenCV c++ 中压缩 TIFF 格式的图像?
- 没有运算符"="与这些操作数匹配,JUCE 窗口演示应用程序
- 是否可以通过每次在内存中仅保存一个平铺来处理完整的平铺 tiff 图像?
- Apple Mach-O linker 错误使用 JUCE 和重型编译器
- JUCE:滑块,价值树错误
- 使用 c++ 将 2d CAD 对象转换为 TIFF 格式
- 解压缩 TIFF 数据会打印随机字符
- 解压缩压缩的 TIFF 数据
- 如何将Juce图形与不同的cpp程序连接
- Juce无法在音频插件上插入按钮
- 超越Juce ButtonStateChange /侦听器问题
- 我如何使用 juce 的文件过滤器描述我想要的文件过滤器?
- Juce 鼠标事件不起作用
- 如何将TIFF或PNM转换为QT中的JPEG
- JUCE - 成员函数不可行:'this'参数具有常量类型
- 为什么Visual Studio 2015在Juce存在时无法编译带有"noexcept"的STL库?
- CPP / JUCE 音频编程框架 - 滑块数组不起作用 - 单个滑块工作
- 不触摸屏幕时的Android(Juce)性能问题
- 使用Juce在c++中开发spotify音频插件
- 我如何将TIFF图像数据传递给JUCE(不支持TIFF)