[英]QImage read pixel data with precision
对不起这个基本问题,我刚刚开始使用QImage从图像文件读取像素数据。
为了理解成员函数,我尝试加载图像文件并尝试输出函数的返回值:
QString fileName = "pic1.bmp";
QImage myImage;
myImage.load( fileName );
std::cout << "width = " << myImage.width() << std::endl;
std::cout << "height = " << myImage.height() << std::endl;
std::cout << "dotspermeterX = " << myImage.dotsPerMeterX() << std::endl;
std::cout << "dotspermeterY = " << myImage.dotsPerMeterY() << std::endl;
QRectF myRect = myImage.rect();
std::cout << "rect = " << myRect.bottomLeft().x() << "," << myRect.bottomLeft().y()
<< " " << myRect.topRight().x() << "," << myRect.topRight().y() << std::endl;
我得到的输出是:
width = 858
height = 608
dotspermeterX = 4724
dotspermeterY = 4724
rect = 0,608 858,0
我的问题是:
1. dots
和pixels
什么区别?
2. QImage是否仅适用于int
像素? 我不能读取亚像素数据以获得更好的精度吗?
为了澄清我的问题,以下是对角线的缩放位图图像,我想读取该行中的所有小像素/点。 这可能吗?
至于“每米点数”,您可能听说过“每英寸点数”(或DPI)。 一样的。 例如,如果您有一台20英寸的显示器,其水平分辨率为X像素,则将具有Y“每英寸点数”(或每英寸像素数)。 如果随后切换到40英寸显示器,但水平分辨率X相同,那么DPI的数量将减少一半 ,因为屏幕现在的宽度是原来的两倍。 因此DPI(或PPI)可以看作是像素大小的度量。
不,我严重怀疑QImage
是否支持亚像素数据。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.