我在Access窗体上有大约50个图标图像(.ico),但是我没有将它们存储在磁盘上。我想将它们从Access导出到磁盘位置。
我在此线程上尝试了建议的解决方案:
Access - Export images from Image controls in forms
我无法打开生成的文件,可能是因为我的图像是(.ico)而不是(.png)
编辑:我能够将图标复制到绘画中,将它们另存为png,然后使用在线转换器将其转换为图标。很耗时,但是可以。
答案 0 :(得分:0)
您可以使用此代码打击。
它将所提供表单的所有图像控件的内容保存到同一文件夹中的文件中。
请注意,某些图像控件包含“奇怪的”二进制格式,可能无法用每种工具正确显示。
导出后,您还必须小心分配正确的文件扩展名。
将代码放置在新模块中,然后在设计视图中打开表单并按如下方式调用它:SaveAllImageControls Forms("MyForm")
Public Sub SaveAllImageControls(ByRef sourceForm As Form)
Dim item As control
For Each item In sourceForm.Controls: Do
If item.ControlType <> acImage Then Exit Do
If IsNull(item.PictureData) Then Exit Do
Dim bArray() As Byte
bArray = item.PictureData
Dim filename As String
filename = Application.CurrentDb.Name & "-" & sourceForm.Name & "-" & item.Name & ".binary"
Dim fileNumber As Integer
fileNumber = FreeFile
Open filename For Binary As fileNumber
Put fileNumber, , bArray
Close fileNumber
Loop While False: Next item
End Sub
答案 1 :(得分:0)
最简单的解决方案可能是导出所有ico文件,然后使用ImageMagick处理它们。您可以运行类似
convert image.ico image.png
作为您链接的代码的一部分,或者作为命令提示符中的简单一次调用。