다음을 통해 공유


PathCompactPathW 함수(shlwapi.h)

경로 구성 요소를 타원으로 바꿔 지정된 픽셀 너비 내에 맞게 파일 경로를 자립니다.

구문

BOOL PathCompactPathW(
  [in]      HDC    hDC,
  [in, out] LPWSTR pszPath,
  [in]      UINT   dx
);

매개 변수

[in] hDC

형식: HDC

글꼴 메트릭에 사용되는 디바이스 컨텍스트에 대한 핸들입니다. 이 값은 NULL일 수 있습니다.

[in, out] pszPath

형식: LPTSTR

수정할 경로를 포함하는 길이 MAX_PATH null로 끝나는 문자열에 대한 포인터입니다. 반환될 때 이 버퍼에는 수정된 문자열이 포함됩니다.

[in] dx

형식: UINT

문자열이 맞아야 하는 너비(픽셀)입니다.

반환 값

형식: BOOL

경로가 지정된 너비로 압축된 경우 TRUE 를 반환합니다. 실패 시 FALSE를 반환하거나 경로의 기본 부분이 지정된 너비에 맞지 않는 경우 반환합니다.

설명

이 함수는 현재 hDC 에서 선택된 글꼴을 사용하여 텍스트의 너비를 계산합니다. 이 함수는 줄임표 앞에 오는 기본 파일 이름 이외의 경로를 압축하지 않습니다.

예제

#include <windows.h>
#include <iostream.h>
#include "Shlwapi.h"

HDC hdc;  /* display DC handle to current font metrics */ 

void main( void )
{
// String path name 1.
char buffer_1[MAX_PATH] = "C:\\path1\\path2\\sample.txt";
char *lpStr1;
lpStr1 = buffer_1;

// String path name 2.
char buffer_2[MAX_PATH] = "C:\\path1\\path2\\sample.txt";
char *lpStr2;
lpStr2 = buffer_2;

// String path name 3.
char buffer_3[MAX_PATH] = "C:\\path1\\path2\\sample.txt";
char *lpStr3;
lpStr3 = buffer_3;

// String path name 4.
char buffer_4[MAX_PATH] = "C:\\path1\\path2\\sample.txt";
char *lpStr4;
lpStr4 = buffer_4;

// Variable to get the return from "PathCompactPath".
int retval;

cout << "The un-truncated path is                " << lpStr1 << endl;

retval = PathCompactPath(hdc,lpStr1,125);
cout << "The truncated path at 125 pixels is :   " << lpStr1 << endl;

retval = PathCompactPath(hdc,lpStr2,120);
cout << "The truncated path at 120 pixels is :   " << lpStr2 << endl;

retval = PathCompactPath(hdc,lpStr3,110);
cout << "The truncated path at 110 pixels is :   " << lpStr3 << endl;

retval = PathCompactPath(hdc,lpStr4,25);
cout << "The truncated path at  25 pixels is :   " << lpStr4 << endl;
}

OUTPUT:
===========
The un-truncated path is                C:\path1\path2\sample.txt
The truncated path at 125 pixels is :   C:\path1\...\sample.txt
The truncated path at 120 pixels is :   C:\pat...\sample.txt
The truncated path at 110 pixels is :   C:\p...\sample.txt
The truncated path at  25 pixels is :   ...\sample.txt

참고

shlwapi.h 헤더는 UNICODE 전처리기 상수의 정의에 따라 이 함수의 ANSI 또는 유니코드 버전을 자동으로 선택하는 별칭으로 PathCompactPath를 정의합니다. 인코딩 중립 별칭을 인코딩 중립이 아닌 코드와 혼합하면 컴파일 또는 런타임 오류가 발생하는 불일치가 발생할 수 있습니다. 자세한 내용은 함수 프로토타입에 대한 규칙을 참조하세요.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 2000 Professional, Windows XP [데스크톱 앱만 해당]
지원되는 최소 서버 Windows 2000 Server[데스크톱 앱만]
대상 플랫폼 Windows
헤더 shlwapi.h
라이브러리 Shlwapi.lib
DLL Shlwapi.dll(버전 4.71 이상)