2013-04-29 3 views
1

하이퍼 카드에서 카드에만 그림을 저장할 수 있습니다. 라이브 코드에서는 사진 모음을 스택 레벨에 저장할 수 있습니다. 이 올바른지? 그렇다면 폴더의 모든 그림을 스택에로드하는 방법은 무엇입니까? 그리고 그림에 대한 모든 참조를 스택으로 읽는 읽기 스크립트를 어떻게 변경합니까?사진을 스택에 저장하는 방법은 무엇입니까?

답변

3

스택에 이미지를 저장할 수는 없지만 카드에는 이미지를 저장할 수 없다고 생각합니다. 카드에 이미지를 저장하려면 import 명령이 필요합니다. 당신이 ask folder 명령을 사용할 수 있습니다,

answer file "select a picture" 
if it <> "" then 
    import paint from file it 
end if 

한 폴더에서 여러 이미지를 가져 오려면, 그들에게 모든 얻을 the defaultfoderthe files을 사용합니다 : 그것은 예를 들어, 현재 (맨 앞) 카드에 이미지를 배치합니다

answer folder "select a folder" 
if it <> "" then 
    set the defaultfolder to it 
    put the files into myListOfFiles 
    repeat for each line myFile in myListOfFiles 
     import paint from file myFile 
    end repeat 
end if 

일부 OS에는 the files에 표시되는 숨김 파일이 있습니다. 이를 방지하기 위해, 당신은 맥 OS X에 예를 들어, 그들을 필터링해야합니다

filter myListOfFiles without ".*" 

원치 않는 파일 형식을 피하기 위해 또 다른 방법은 파일에 대한 규정을 추가하는 것입니다 포함 할 :

if char -4 to -1 of myFile is among the items of ".gif,.jpg,jpeg,.png,.bmp,.tif,tiff" then 
    import paint from file myFile 
end if 
+0

이렇게하면 모든 이미지를 단일 카드에 배치 할 수 있습니다. 모든 이미지가 자체 카드에 저장되도록하려면 어떻게해야합니까? –

+0

추가 :'새 카드'적절한 : – BvG

+1

및 내장 사전에있는 모든 용어를 찾는 것을 잊지 마십시오 – BvG

1

스택에있는 모든 이미지를 다음과 같이 저장할 수 있습니다. 당신이 당신의 'myimage을'이라는 카드 및 폴더에있는 이미지 중 하나에 이미지 객체를 가지고 있다면 'car.png'라고했다

answer folder "Select the folder containing your images" 
if it <> "" then 
    set the folder to it 
    put the files into tFiles 
    repeat for each line tFile in tFiles 
    set the uImages[tFile] of this stack to URL("binfile:" & tFile) 
    end repeat 
end if 

, 당신은 할 수;

set the text of image "myImage" to the uImages["car.png"] of this stack 

스택에 저장된 이미지 목록을 검색하려면 참조 할 수 있습니다.

put the customKeys["uImages"] of this stack into tImageList 

HTH :)

+0

'uImages'는 파일 참조를 포함하는 배열입니까? 나는'tImageList' 변수가 정의 된 곳을 보지 못했습니다. –

+0

uImages는 반복 루프에서 생성 된 사용자 정의 속성 세트 (사용자 정의 속성의 배열)입니다.tImageList는 모든 변수가 될 수 있습니다. 방금 만든 속성 키를 덤프하여 만들었습니다. 사용자 정의 특성 세트에 대한 자세한 정보는 LiveCode 사용자 안내서의 7.9 절을 참조하십시오. 7.8.3 에서 – splash21

+0

** 내가 발견 사용자 정의 속성의 내용 ** : 당신은 당신이 내장 된 세트 같은 방법으로 설정 명령과 함께 해당 속성 이름을 사용하여 사용자 지정 속성 값을 설정 * 속성 * –

3

그것은 카드에 배치하지 않고 스택에 이미지를 저장하기 위해 너무 어렵지 않다. 이것을하십시오 :

어떤 카드든지에 그룹을 창조하십시오. 모든 이미지를 가져옵니다. 개체 메뉴에서 "그룹 제거"를 선택하십시오.

카드에서 그룹을 제거하지만 삭제하지는 않습니다. 이미지 그룹은 카드가 없지만 모든 이미지를 사용할 수 있습니다. 아이콘을 정상적으로 참조하고, 아이콘으로 사용하고, 필요에 따라 나중에 카드에 복사 할 수 있습니다. 그것은 카드에 보이지 않는 그룹을 갖는 것과 같습니다. 단지 계층 구조의 객체가 아닙니다. 메시지를받지 않고 객체 레이어링에 있지 않습니다.

가져온 하이퍼 카드 스택이 아이콘 이미지를 저장하는 방식입니다. HC 가져 오기가 끝나면 Object 메뉴의 "Place group"메뉴 항목에서 "HC Icons"라는 이름의 배치되지 않은 그룹을 찾을 수 있습니다. 어떤 카드에도 존재하지 않지만 가져온 모든 버튼에는 여전히 아이콘이 표시됩니다.

관련 문제