免费视频|新人指南|投诉删帖|广告合作|地信网APP下载

查看: 205|回复: 4
收起左侧

[求助] c#,ae,布局视图导出jpg图片很不清晰怎么办?

[复制链接]

10

主题

432

铜板

1

好友

助理工程师

Rank: 5Rank: 5

积分
106
发表于 2024-6-24 16:04 | 显示全部楼层 |阅读模式
c#,ae,布局视图导出jpg图片很不清晰怎么办?
我的代码是:
private void toolStripComboBox2_Click(object sender, EventArgs e)
        {
                SaveFileDialog pSaveDialog = new SaveFileDialog();
                pSaveDialog.FileName = "";
                pSaveDialog.Filter = "JGP图片(*.jpg)|*.jpg|tif图片(*.tif)|*.tif|PDF文档(*.pdf)|*.pdf";
                if (pSaveDialog.ShowDialog() == DialogResult.OK)
                {
                    // 获取布局视图屏幕分辨率,用于设置输出分辨率
                    double iScreenDispalyResolution = axPageLayoutControl1.ActiveView.ScreenDisplay.DisplayTransformation.Resolution;
                    // 根据用户选择保存的文件类型,来创建不同的输出类
                    IExporter pExport=null ;
                    if (pSaveDialog.FilterIndex == 1)
                    {
                    pExport = new JpegExporter() as IExporter;
                    }
                    else if (pSaveDialog.FilterIndex == 2)
                    {
                        pExport = new TiffExporter() as IExporter;
                    }
                    else if (pSaveDialog.FilterIndex == 3)
                    {
                        pExport = new PDFExporter() as IExporter;
                    }
                    // 设置输出文件名,为用户在保存窗口设置的文件名
                    pExport.ExportFileName = pSaveDialog.FileName;
                    // 设置输出分辨率
                    pExport.Resolution = (short)iScreenDispalyResolution;
                // 获取输出范围??  获取视图框架对象,进而得到视图范围
               IActiveView pActiveView = axPageLayoutControl1.PageLayout as IActiveView;
                IActiveView view = pActiveView.FocusMap as IActiveView;
                tagRECT deviceRect = view.ExportFrame;//.ScreenDisplay.DisplayTransformation.get_DeviceFrame();
                IEnvelope pDeviceEnvelop = new EnvelopeClass();
                    // 设置一个边框范围
                    pDeviceEnvelop.PutCoords(deviceRect.left, deviceRect.bottom, deviceRect.right, deviceRect.top);
                // 将打印像素范围 设置给输出对象
                pExport.PixelBounds = pDeviceEnvelop;
                    // 设置跟踪取消对象
                    ITrackCancel pCancle = new CancelTracker();
                    // 进行视图控件的视图输出操作,设置对应参数
                    axPageLayoutControl1.ActiveView.Output(pExport.StartExporting(), pExport.Resolution, ref deviceRect, null,null);
                    Application.DoEvents();// 启动应用程序
                    pExport.FinishExporting();//完成输出
                }
        }
我将分辨率设置为600也还是不清晰,请问怎么解决?

2

主题

1万

铜板

12

好友

高级工程师

Rank: 9Rank: 9Rank: 9

积分
1076
发表于 2024-6-26 16:01 | 显示全部楼层
布局视图屏幕分辨率的分辨率 是不是可以理解为电脑屏幕的分辨率。。如果是的话,那分辨率肯定很低。
回复 支持 反对

使用道具 举报

21

主题

9万

铜板

83

好友

地信学员

开开心心每一天

Rank: 12Rank: 12Rank: 12

积分
12468
发表于 2024-6-26 20:49 | 显示全部楼层
路過進來學習學習
回复 支持 反对

使用道具 举报

26

主题

2万

铜板

98

好友

地信贵宾

Rank: 13Rank: 13Rank: 13Rank: 13

积分
474544

精华勋章宣传勋章爱心勋章优秀斑主地信元老灌水勋章荣誉会员勋章活跃勋章贡献勋章

QQ
发表于 2024-6-28 08:21 手机频道 | 显示全部楼层
看一看,学习一下
回复 支持 反对

使用道具 举报

0

主题

315

铜板

1

好友

技术员

Rank: 3Rank: 3

积分
51
发表于 2024-6-28 09:37 | 显示全部楼层
感谢楼主分享!!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

在线客服
快速回复 返回顶部 返回列表