如何从4D工具箱中导出图片?

时间:2017-09-26 15:09:10

标签: 4d-database

我在远程模式下使用4D版本11.6(72398),并尝试从数据库导出三张图片。如何从工具箱中提取图片?如果可以避免,则不接受截图和编辑。

1 个答案:

答案 0 :(得分:0)

工具箱的图片库区域没有导出功能。但是,以下命令将帮助您导出图片:

PICTURE LIBRARY LIST获取图片名称数组和图片参考ID数组

GET PICTURE FROM LIBRARY使用图片参考ID将图片库中的图片转换为图片变量。

WRITE PICTURE FILE将Picture变量写入磁盘。

以下代码可用于将图片库中的所有图片导出为磁盘作为PNG文件。

C_TEXT($vsPicName;$vsFileName)
C_LONGINT($vlNbPictures;$vlPicture;$vlPicRef)
C_PICTURE($vgPicture)
ARRAY TEXT($asPicName;0)
PICTURE LIBRARY LIST($alPicRef;$asPicName)
$vlNbPictures:=Size of array($alPicRef)
If ($vlNbPictures>0)
    For ($vlPicture;1;$vlNbPictures)
        $vlPicRef:=$alPicRef{$vlPicture}
        $vsPicName:=$asPicName{$vlPicture}
        GET PICTURE FROM LIBRARY($alPicRef{$vlPicture};$vgPicture)
        If (OK=1)
            $vsFileName:=String($vlPicRef)+$vsPicName+".png"
            WRITE PICTURE FILE($vsFileName;$vgPicture;".png")
        End if 
    End for 
Else 
    ALERT("The Picture Library is empty.")
End if 

如果您从单用户或服务器运行上面的代码,文件将放在结构文件旁边。

如果从客户端运行上面的代码,文件将被放入4D Client Cache文件夹中,可以使用以下代码快速打开该文件夹:

SHOW ON DISK(Get 4D folder(4D Client Database Folder);*)