[doxygen] Doxygen으로 소개 페이지를 만드는 방법

Doxygen을 사용하여 SDK에 대한 문서를 만들었습니다. 파일, 네임 스페이스, 클래스, 유형 등의 목록이 포함되어 있습니다. 코드에 Doxygen 주석으로 배치 한 모든 것입니다. 이제 코드 요소와 직접 관련이없는 SDK에 대한 일반적인 정보 (일종의 소개)를 작성하고 싶습니다. 이 소개를 문서 시작 페이지에 배치하고 싶습니다. 어떻게 할 수 있습니까?



답변

mainpage명령을 살펴보십시오 .

또한 다른 스레드에 대한 답변을보십시오 : How to include custom files in Doxygen . : 그것은 거기 추가 문서 파일로 클래스를 doxygen이 세 확장이라는 것을 명시 .dox, .txt그리고 .doc. 이러한 확장자를 가진 파일은 파일 색인에 나타나지 않지만 최종 문서에 추가 정보를 포함하는 데 사용할 수 있습니다. 필요한 문서에는 매우 유용하지만 소스 코드에 포함하기에는 적절하지 않습니다 (예 : FAQ)

따라서 mainpage.doxSDK를 소개하기 위해 프로젝트 디렉토리에 (또는 비슷한 이름의) 파일을 갖는 것이 좋습니다 . 이 파일 안에 하나 이상의 C / C ++ 스타일 주석 블록을 넣어야합니다.


답변

v1.8.8부터는 옵션도 있습니다 USE_MDFILE_AS_MAINPAGE. 따라서 인덱스 파일 (예 : README.md )을 에 추가 INPUT하고이 옵션의 값으로 설정해야합니다.

INPUT += README.md
USE_MDFILE_AS_MAINPAGE = README.md


답변

Doxygen 릴리스 1.8.0에서는 마크 다운 형식의 페이지도 추가 할 수 있습니다. 이 작업을 수행하려면 .md또는 .markdown확장자 를 사용하여 페이지를 만들고 구성 파일에 다음을 추가해야합니다.

INPUT += your_page.md
FILE_PATTERNS += *.md *.markdown

자세한 내용은 http://www.doxygen.nl/manual/markdown.html#md_page_header 를 참조하십시오.


답변

다음 구문은 doxygen에 대한 기본 페이지 및 관련 하위 페이지를 추가하는 데 도움이 될 수 있습니다.

/*! \mainpage Drawing Shapes
 *
 * This project helps user to draw shapes.
 * Currently two types of shapes can be drawn:
 * - \subpage drawingRectanglePage "How to draw rectangle?"
 *
 * - \subpage drawingCirclePage "How to draw circle?"
 *
 */

/*! \page drawingRectanglePage How to draw rectangle?
 *
 * Lorem ipsum dolor sit amet
 *
 */

/*! \page drawingCirclePage How to draw circle?
 *
 * This page is about how to draw a circle.
 * Following sections describe circle:
 * - \ref groupCircleDefinition "Definition of Circle"
 * - \ref groupCircleClass "Circle Class"
 */

다음과 같이 그룹을 만들면 페이지 디자인에 도움이됩니다.

/** \defgroup groupCircleDefinition Circle Definition
 * A circle is a simple shape in Euclidean geometry.
 * It is the set of all points in a plane that are at a given distance from a given point, the centre;
 * equivalently it is the curve traced out by a point that moves so that its distance from a given point is constant.
 * The distance between any of the points and the centre is called the radius.
 */

여기에서 예를 찾을 수 있습니다.


답변

콘텐츠를 포함 할 문서에 파일을 추가합니다 (예 : toc.h) .

@ mainpage Manual SDK
<hr/>
@ section pageTOC Content
  -# @ref Description
  -# @ref License
  -# @ref Item
...

그리고 당신의 Doxyfile:

INPUT = toc.h \

예 (러시아어) :


답변

나는 v 1.8.13으로 위의 모든 것을 시도했지만 아무 소용이 없었다. 나를 위해 일한 것은 (macOS에서) doxywizard-> Expert 태그를 사용하여 USE_MD_FILE_AS_MAINPAGE설정 을 채우는 것이 었습니다 .

내 Doxyfile을 다음과 같이 변경했습니다.

USE_MDFILE_AS_MAINPAGE = ../README.md
...
INPUT                  = ../README.md \
                         ../sdk/include \
                         ../sdk/src

에 대한 행 종료에 유의하십시오 INPUT. 문서에 지정된대로 공백을 구분 기호로 사용했습니다. AFAICT 이것은 Doxyfile의 작동하지 않는 버전과 작동하는 버전 사이의 유일한 변경 사항입니다.


답변