1. 怎么用c语言将一幅图片进行旋转后保存到磁盘里
旋转 只能 是90°的整数倍.
而且要新申请一块区域来保存.
建议你学一下openCV.
2. 求用C语言size=imagesize选定一区域的图形旋转
这要你在用putimage的时候做调整了啊!
3. c语言 读取一副BMP格式的图像文件,并将并将其旋转180度后输出一个新的BMP格式的图
先去看看bmp图片的格式,一般就是文件头信息和文件数据信息。
你需要做的是先从bmp图片中解析出头信息,找到是什么格式的888,565,555这种,然后还需要找到宽高,旋转180°就是将数据左右对称,上下对称。
最后把头信息和你改过的数据信息组合起来就可以了
4. 用c语言实现将bmp图片(黑白单色)进行任意角度旋转。求高手给完整代码。
typedef int (WINAPI ICEPUB_IMGCIRCUMGYRATE)(char *strImgFilename,char *strBmpFilename,int radian);
ICEPUB_IMGCIRCUMGYRATE *icePub_imgCircumgyrate = 0;
HINSTANCE hDLLDrv = LoadLibrary("icePubDll.dll");
if(hDLLDrv)
{
icePub_imgCircumgyrate=(ICEPUB_IMGCIRCUMGYRATE *)GetProcAddress(hDLLDrv,"icePub_imgCircumgyrate");
}
if(icePub_imgCircumgyrate)
{
icePub_imgCircumgyrate("a.jpg","a1.bmp",45);
icePub_imgCircumgyrate("d.png", "d1.bmp",120);
}
if(hDLLDrv)
FreeLibrary(hDLLDrv);
5. 请问如何在CCS3.3上用C语言实现图像旋转处理,有具体的代码吗
你好,C语言基本都忘得差不多了。
具体代码就只有自己花时间做了。
6. 求用纯c语言写的使图像翻转90°的源程序。
请参考bmp文件的数据结构, jpeg的图像可以通过libjpeg提供的函数解压,得到的数据和bmp文件中直接读取的位图数据是一样的。 数据都是以图形扫描线的格式存放, 但是由于图形可能有不同的色深,不同的模式和压缩方式, 代码会比较复杂。
在一般的linux里我们直接调用gd库来实现这些操作, 但我不知道gd在嵌入式的环境下是不是一样操作的(gd 支持arm), 你可以去参考gd的手册。
7. 求c语言高手赐一个关于图像旋转的程序,谢谢!!
原型:
int WINAPI icePub_imgCircumgyrate(char *strImgFilename,char *strBmpFilename,int radian)
输入:strImgFilename 待处理图像文件名
strBmpFilename 结果bmp文件名
radian 旋转角度
输出:
typedef int (WINAPI ICEPUB_IMGCIRCUMGYRATE)(char *strImgFilename,char *strBmpFilename,int radian);
ICEPUB_IMGCIRCUMGYRATE *icePub_imgCircumgyrate = 0;
HINSTANCE hDLLDrv = LoadLibrary("icePubDll.dll");
if(hDLLDrv)
{
icePub_imgCircumgyrate=(ICEPUB_IMGCIRCUMGYRATE *)GetProcAddress(hDLLDrv,"icePub_imgCircumgyrate");
}
if(icePub_imgCircumgyrate)
{
icePub_imgCircumgyrate("a.jpg","a1.bmp",45);
icePub_imgCircumgyrate("d.png", "d1.bmp",120);
}
if(hDLLDrv)
FreeLibrary(hDLLDrv);
8. c语言程序设计 绘制机械图并旋转
怎么这题这么多人问。。。
很简单呀,只不过你的视角是从哪一点出发的,
你先把图形转Z坐标转90角,就是左侧了(我假设Z轴是竖的)
然后把把X,Y,Z分别变大用
矩阵写就是
cos90
-sin90
0
0
sin90
cos90
0
0
0
0
1
0
0
0
0
1
(这个矩阵你要确定你是概哪概坐标轴旋转,这里我是根据Z轴旋转90度)
乘于
0.5
0
0
0
0
1
0
0
0
0
2
0
0
0
0
1
9. c语言怎么旋转一个矩阵
#include<stdio.h>
int main()
{int i,j,t,n,a[20][20];
scanf("%d",&n);
for(i=0;i<n;i++)
{for(j=0;j<n;j++)
{a[i][j]=i*n+j+1;
printf("%3d",a[i][j]);
}
printf(" ");
}
printf(" ");
for(i=0;i<=n/2;i++)
for(j=i;j<n-i-1;j++)
{t=a[i][j];
a[i][j]=a[j][n-1-i];
a[j][n-1-i]=a[n-1-i][n-1-j];
a[n-1-i][n-1-j]=a[n-1-j][i];
a[n-1-j][i]=t;
}
for(i=0;i<n;i++)
{for(j=0;j<n;j++)
printf("%3d",a[i][j]);
printf(" ");
}
return 0;
}
10. C语言 图形翻转``
#include<stdio.h>
main()
{
int a[100][100],i,j,n,m,t,s,k;
scanf("%d %d %d",&m,&n,&t);//M为行 N为列 T为翻转的方式
for(i=0;i<m;i++)
{ for(j=0;j<n;j++)
scanf("%d",&a[i][j]);
}
if(t==1)
{
for(s=0;s<i/2;s++)
for(j=0;j<n;j++)
{
k=a[i-s-1][j];
a[i-s-1][j]=a[s][j];
a[s][j]=k;
}
}
if(t==-1)
{for(s=0;s<j/2;s++)
for(i=0;i<m;i++)
{
k=a[i][j-s-1];
a[i][j-s-1]=a[i][s];
a[i][s]=k;
}
}
for(i=0;i<m;i++)
{ for(j=0;j<n;j++)
printf(" %d",a[i][j]);
printf("\n");
}
}