c# - ClickOnce 发布后找不到图像
问题描述
我正在使用 MigraDoc 创建一个 PDF 文档。该图像位于项目的根文件夹中,因此我使用此代码将其插入到 PDF 文档中:
Image img = tfLogoDate.AddImage("../../db_logo_500p.png");
构建操作设置为“内容”:
这在开发过程中工作正常,使用 Visual Studio 调试版本。但是当我使用 ClickOnce(发布)创建构建时,它说找不到图像。
我是否使用了错误的构建操作?还是因为当我使用 ClickOnce 发布我的应用程序时,相对路径发生了变化?
解决方案
通过更改图像位置,我找到了一种使其工作的方法。我现在改用这个:
// I have added the 'pack://(...)' in front of the path
Image img = tfLogoDate.AddImage("pack://application:,,,/../../db_logo_500p.png");
我必须对 PNG 文件使用以下设置:
- 构建操作:内容
- 复制到输出目录:不要复制
如果有人确切知道上述工作的原因,我会很高兴知道。但最重要的是,它有效...
推荐阅读
- spring-boot - 如何为所有变更日志全局配置 Liquibase ObjectQuotingStrategy(通过 Spring Boot)?
- javascript - 使用 SKU 将商品添加到购物车的功能
- reactjs - 将 React Router 与 Apache 一起使用时禁止出现错误 403
- android - 无法使用 react-native android 从内部存储中读取图像
- amazon-web-services - 将 AWS Lake Formation 与 CloudFormation 结合使用
- java - ImageIO.read 无法找到 .png 文件
- swift - 无法在 swift 包中创建可可触摸类,而是创建 .h 和 .m 文件
- java - 输出最高分
- java - java中的Socket编程——共享服务器数据
- android - Google Fit API 在内部测试中不起作用