📝 Update Korean docs as upstream
[ci skip]
This commit is contained in:
parent
a454cc8260
commit
d234467682
6 changed files with 70 additions and 52 deletions
|
@ -72,6 +72,12 @@ win.show();
|
|||
* `title` String - 기본 윈도우 제목. 기본값은 `"Electron"`입니다.
|
||||
* `icon` [NativeImage](native-image.md) - 윈도우 아이콘, 생략하면 실행 파일의
|
||||
아이콘이 대신 사용됩니다.
|
||||
* `icon` [NativeImage](native-image.md) - 윈도우 아이콘. Windows에선 가장 좋은
|
||||
시각적 효과를 얻기 위해 `ICO`를 사용하는 것을 권장하며, 또한 undefined로 남겨두면
|
||||
실행 파일의 아이콘이 대신 사용됩니다.
|
||||
On Windows it is
|
||||
recommended to use `ICO` icons to get best visual effects, you can also
|
||||
leave it undefined so the executable's icon will be used.
|
||||
* `show` Boolean - 윈도우가 생성되면 보여줄지 여부. 기본값은 `true`입니다.
|
||||
* `frame` Boolean - `false`로 지정하면 창을 [Frameless Window](frameless-window.md)
|
||||
형태로 생성합니다. 기본값은 `true`입니다.
|
||||
|
@ -212,19 +218,17 @@ Returns:
|
|||
|
||||
보통 창을 닫아야 할지 결정하기 위해 `beforeunload` 이벤트를 사용하려고 할 것입니다.
|
||||
이 이벤트는 윈도우 콘텐츠를 새로고칠 때도 발생합니다.
|
||||
Electron에선 빈 문자열 또는 `false`를 전달할 경우 윈도우 종료를 취소합니다.
|
||||
|
||||
Electron에선 `undefined`가 아닌 이외의 값을 전달할 경우 윈도우 종료를 취소합니다.
|
||||
예시는 다음과 같습니다:
|
||||
|
||||
```javascript
|
||||
window.onbeforeunload = (e) => {
|
||||
console.log('I do not want to be closed');
|
||||
|
||||
// 반드시 문자열을 반환해야 하고 사용자에게 페이지 언로드에 대한 확인 창을 보여주는
|
||||
// 보통의 브라우저와는 달리 Electron은 개발자에게 더 많은 옵션을 제공합니다.
|
||||
// 빈 문자열을 반환하거나 false를 반환하면 페이지 언로드를 방지합니다.
|
||||
// 또한 dialog API를 통해 사용자에게 어플리케이션을 종료할지에 대한 확인 창을
|
||||
// 보여줄 수도 있습니다.
|
||||
// 일반적인 브라우저와는 달리 사용자에게 확인 창을 보여주지 않고, non-void 값을 반환하면
|
||||
// 조용히 닫기를 취소합니다.
|
||||
// Dialog API를 통해 사용자가 어플리케이션을 종료할지 정할 수 있도록 확인 창을 표시하는 것을
|
||||
// 추천합니다.
|
||||
e.returnValue = false;
|
||||
};
|
||||
```
|
||||
|
|
|
@ -25,7 +25,13 @@ const appIcon = new Tray(image);
|
|||
현재 `PNG` 와 `JPEG` 이미지 포맷을 지원하고 있습니다.
|
||||
손실 없는 이미지 압축과 투명도 지원을 위해 `PNG` 사용을 권장합니다.
|
||||
|
||||
그리고 Windows에서는 `ICO` 포맷도 사용할 수 있습니다.
|
||||
Windows에서는 파일 경로로부터 `ICO` 포맷도 사용할 수 있으며, 가장 좋은 시각적 효과를
|
||||
얻기 위해 최소한 아이콘에 다음 사이즈를 포함하는 것을 권장합니다:
|
||||
|
||||
* 16x16
|
||||
* 32x32
|
||||
* 64x64
|
||||
* 256x256
|
||||
|
||||
## 고해상도 이미지
|
||||
|
||||
|
|
|
@ -27,6 +27,8 @@ __플랫폼별 한계:__
|
|||
트레이 아이콘이 작동하도록 만들 수 있습니다.
|
||||
* 앱 알림 표시기는 컨텍스트 메뉴를 가지고 있을 때만 보입니다.
|
||||
* Linux에서 앱 표시기가 사용될 경우, `click` 이벤트는 무시됩니다.
|
||||
* Windows에선 가장 좋은 시각적 효과를 얻기 위해 `ICO` 아이콘을 사용하는 것을
|
||||
권장합니다.
|
||||
* Linux에서 각각 개별 `MenuItem`의 변경을 적용하려면 `setContextMenu`를 다시
|
||||
호출해야 합니다. 예를 들면:
|
||||
|
||||
|
|
|
@ -634,7 +634,8 @@ print기능을 사용하지 않는 경우 전체 바이너리 크기를 줄이
|
|||
* `marginsType` Integer - 사용할 마진의 종류를 지정합니다. 0 부터 2 사이 값을 사용할
|
||||
수 있고 각각 기본 마진, 마진 없음, 최소 마진입니다.
|
||||
* `pageSize` String - 생성되는 PDF의 페이지 크기를 지정합니다. 값은 `A3`, `A4`,
|
||||
`A5`, `Legal`, `Letter` 와 `Tabloid`가 사용될 수 있습니다.
|
||||
`A5`, `Legal`, `Letter`, `Tabloid` 또는 마이크론 단위의 `height` & `width`가
|
||||
포함된 객체를 사용할 수 있습니다.
|
||||
* `printBackground` Boolean - CSS 배경을 프린트할지 여부를 정합니다.
|
||||
* `printSelectionOnly` Boolean - 선택된 영역만 프린트할지 여부를 정합니다.
|
||||
* `landscape` Boolean - landscape을 위해선 `true`를, portrait를 위해선 `false`를
|
||||
|
@ -658,6 +659,8 @@ Chromium의 미리보기 프린팅 커스텀 설정을 이용하여 윈도우의
|
|||
}
|
||||
```
|
||||
|
||||
다음은 `webContents.printToPDF`의 예시입니다:
|
||||
|
||||
```javascript
|
||||
const {BrowserWindow} = require('electron');
|
||||
const fs = require('fs');
|
||||
|
|
|
@ -10,35 +10,35 @@ Electron의 소스 코드는 몇 개의 파트로 분리되어 있습니다. 그
|
|||
|
||||
```
|
||||
Electron
|
||||
├── atom - C++ 소스 코드.
|
||||
| ├── app - 시스템 엔트리 코드.
|
||||
| ├── browser - 주 윈도우를 포함한 프론트엔드, UI, 그리고 메인 프로세스에 관련된
|
||||
├── atom/ - C++ 소스 코드.
|
||||
| ├── app/ - 시스템 엔트리 코드.
|
||||
| ├── browser/ - 주 윈도우를 포함한 프론트엔드, UI, 그리고 메인 프로세스에 관련된
|
||||
| | 코드와 렌더러 및 웹 페이지 관리 관련 코드.
|
||||
| | ├── ui - 서로 다른 플랫폼에 대한 UI 관련 구현 코드.
|
||||
| | | ├── cocoa - Cocoa 특정 소스 코드.
|
||||
| | | ├── gtk - GTK+ 특정 소스 코드.
|
||||
| | | └── win - Windows GUI 특정 소스 코드.
|
||||
| | ├── api - 메인 프로세스 API의 구현.
|
||||
| | ├── net - 네트워킹 관련 코드.
|
||||
| | ├── mac - Mac 특정 Objective-C 소스 코드.
|
||||
| | └── resources - 아이콘들, 플랫폼 종속성 파일들, 기타 등등..
|
||||
| ├── renderer - 렌더러 프로세스에서 작동하는 코드.
|
||||
| | └── api - 렌더러 프로세스 API의 구현.
|
||||
| └── common - 메인과 렌더러 프로세스에서 모두 사용하는 코드, 몇가지 유틸리티
|
||||
| | ├── ui/ - 서로 다른 플랫폼에 대한 UI 관련 구현 코드.
|
||||
| | | ├── cocoa/ - Cocoa 특정 소스 코드.
|
||||
| | | ├── win/ - Windows GUI 특정 소스 코드.
|
||||
| | | └── x/ - X11 특정 소스 코드.
|
||||
| | ├── api/ - 메인 프로세스 API의 구현.
|
||||
| | ├── net/ - 네트워킹 관련 코드.
|
||||
| | ├── mac/ - Mac 특정 Objective-C 소스 코드.
|
||||
| | └── resources/ - 아이콘들, 플랫폼 종속성 파일들, 기타 등등..
|
||||
| ├── renderer/ - 렌더러 프로세스에서 작동하는 코드.
|
||||
| | └── api/ - 렌더러 프로세스 API의 구현.
|
||||
| └── common/ - 메인과 렌더러 프로세스에서 모두 사용하는 코드, 몇가지 유틸리티
|
||||
| 함수들이 포함되어 있고 node의 메시지 루프와 Chromium의 메시지 루프를 통합.
|
||||
| └── api - 공통 API 구현들, 기초 Electron 빌트-인 모듈들.
|
||||
├── chromium_src - Chromium에서 복사하여 가져온 소스 코드.
|
||||
├── default_app - Electron에 앱이 제공되지 않았을 때 보여지는 기본 페이지.
|
||||
├── docs - 참조 문서.
|
||||
├── lib - JavaScript 소스 코드.
|
||||
| ├── browser - Javascript 메인 프로세스 초기화 코드.
|
||||
| | └── api - Javascript API 구현 코드.
|
||||
| ├── common - 메인과 렌더러 프로세스에서 모두 사용하는 JavaScript
|
||||
| | └── api - Javascript API 구현 코드.
|
||||
| └── renderer - Javascript 렌더러 프로세스 초기화 코드.
|
||||
| └── api - Javascript API 구현 코드.
|
||||
├── spec - 자동화 테스트.
|
||||
├── atom.gyp - Electron의 빌드 규칙.
|
||||
| └── api/ - 공통 API 구현들, 기초 Electron 빌트-인 모듈들.
|
||||
├── chromium_src/ - Chromium에서 복사하여 가져온 소스 코드.
|
||||
├── default_app/ - Electron에 앱이 제공되지 않았을 때 보여지는 기본 페이지.
|
||||
├── docs/ - 참조 문서.
|
||||
├── lib/ - JavaScript 소스 코드.
|
||||
| ├── browser/ - Javascript 메인 프로세스 초기화 코드.
|
||||
| | └── api/ - Javascript API 구현 코드.
|
||||
| ├── common/ - 메인과 렌더러 프로세스에서 모두 사용하는 JavaScript
|
||||
| | └── api/ - Javascript API 구현 코드.
|
||||
| └── renderer/ - Javascript 렌더러 프로세스 초기화 코드.
|
||||
| └── api/ - Javascript API 구현 코드.
|
||||
├── spec/ - 자동화 테스트.
|
||||
├── electron.gyp - Electron의 빌드 규칙.
|
||||
└── common.gypi - 컴파일러 설정 및 `node` 와 `breakpad` 등의 구성요소를 위한 빌드
|
||||
규칙.
|
||||
```
|
||||
|
|
|
@ -85,30 +85,33 @@ ID로 치환해야 합니다.
|
|||
```bash
|
||||
#!/bin/bash
|
||||
|
||||
# 어플리케이션의 이름
|
||||
# 어플리케이션의 이름.
|
||||
APP="YourApp"
|
||||
# 서명할 어플리케이션의 경로
|
||||
# 서명할 어플리케이션의 경로.
|
||||
APP_PATH="/path/to/YourApp.app"
|
||||
# 서명된 패키지의 출력 경로
|
||||
# 서명된 패키지의 출력 경로.
|
||||
RESULT_PATH="~/Desktop/$APP.pkg"
|
||||
# 요청한 인증서의 이름
|
||||
# 요청한 인증서의 이름.
|
||||
APP_KEY="3rd Party Mac Developer Application: Company Name (APPIDENTITY)"
|
||||
INSTALLER_KEY="3rd Party Mac Developer Installer: Company Name (APPIDENTITY)"
|
||||
# plist 파일의 경로.
|
||||
CHILD_PLIST="/path/to/child.plist"
|
||||
PARENT_PLIST="/path/to/parent.plist"
|
||||
|
||||
FRAMEWORKS_PATH="$APP_PATH/Contents/Frameworks"
|
||||
|
||||
codesign -s "$APP_KEY" -f --entitlements child.plist "$FRAMEWORKS_PATH/Electron Framework.framework/Versions/A/Electron Framework"
|
||||
codesign -s "$APP_KEY" -f --entitlements child.plist "$FRAMEWORKS_PATH/Electron Framework.framework/Versions/A/Libraries/libffmpeg.dylib"
|
||||
codesign -s "$APP_KEY" -f --entitlements child.plist "$FRAMEWORKS_PATH/Electron Framework.framework/Versions/A/Libraries/libnode.dylib"
|
||||
codesign -s "$APP_KEY" -f --entitlements child.plist "$FRAMEWORKS_PATH/Electron Framework.framework"
|
||||
codesign -s "$APP_KEY" -f --entitlements child.plist "$FRAMEWORKS_PATH/$APP Helper.app/Contents/MacOS/$APP Helper"
|
||||
codesign -s "$APP_KEY" -f --entitlements child.plist "$FRAMEWORKS_PATH/$APP Helper.app/"
|
||||
codesign -s "$APP_KEY" -f --entitlements child.plist "$FRAMEWORKS_PATH/$APP Helper EH.app/Contents/MacOS/$APP Helper EH"
|
||||
codesign -s "$APP_KEY" -f --entitlements child.plist "$FRAMEWORKS_PATH/$APP Helper EH.app/"
|
||||
codesign -s "$APP_KEY" -f --entitlements child.plist "$FRAMEWORKS_PATH/$APP Helper NP.app/Contents/MacOS/$APP Helper NP"
|
||||
codesign -s "$APP_KEY" -f --entitlements child.plist "$FRAMEWORKS_PATH/$APP Helper NP.app/"
|
||||
codesign -s "$APP_KEY" -f --entitlements child.plist "$APP_PATH/Contents/MacOS/$APP"
|
||||
codesign -s "$APP_KEY" -f --entitlements parent.plist "$APP_PATH"
|
||||
codesign -s "$APP_KEY" -f --entitlements "$CHILD_PLIST" "$FRAMEWORKS_PATH/Electron Framework.framework/Versions/A/Electron Framework"
|
||||
codesign -s "$APP_KEY" -f --entitlements "$CHILD_PLIST" "$FRAMEWORKS_PATH/Electron Framework.framework/Versions/A/Libraries/libffmpeg.dylib"
|
||||
codesign -s "$APP_KEY" -f --entitlements "$CHILD_PLIST" "$FRAMEWORKS_PATH/Electron Framework.framework/Versions/A/Libraries/libnode.dylib"
|
||||
codesign -s "$APP_KEY" -f --entitlements "$CHILD_PLIST" "$FRAMEWORKS_PATH/Electron Framework.framework"
|
||||
codesign -s "$APP_KEY" -f --entitlements "$CHILD_PLIST" "$FRAMEWORKS_PATH/$APP Helper.app/Contents/MacOS/$APP Helper"
|
||||
codesign -s "$APP_KEY" -f --entitlements "$CHILD_PLIST" "$FRAMEWORKS_PATH/$APP Helper.app/"
|
||||
codesign -s "$APP_KEY" -f --entitlements "$CHILD_PLIST" "$FRAMEWORKS_PATH/$APP Helper EH.app/Contents/MacOS/$APP Helper EH"
|
||||
codesign -s "$APP_KEY" -f --entitlements "$CHILD_PLIST" "$FRAMEWORKS_PATH/$APP Helper EH.app/"
|
||||
codesign -s "$APP_KEY" -f --entitlements "$CHILD_PLIST" "$FRAMEWORKS_PATH/$APP Helper NP.app/Contents/MacOS/$APP Helper NP"
|
||||
codesign -s "$APP_KEY" -f --entitlements "$CHILD_PLIST" "$FRAMEWORKS_PATH/$APP Helper NP.app/"
|
||||
codesign -s "$APP_KEY" -f --entitlements "$CHILD_PLIST" "$APP_PATH/Contents/MacOS/$APP"
|
||||
codesign -s "$APP_KEY" -f --entitlements "$PARENT_PLIST" "$APP_PATH"
|
||||
|
||||
productbuild --component "$APP_PATH" /Applications --sign "$INSTALLER_KEY" "$RESULT_PATH"
|
||||
```
|
||||
|
|
Loading…
Reference in a new issue