인라인 PDF 미리보기

아니요, 저는 3가지 문제를 겪고 있습니다.

  1. 로그인 여부와 관계없이 모든 사용자에게 PDF를 표시하는 방법은 무엇인가요?

  2. 외부 URL에서 PDF를 표시할 수 있나요?

  3. 사용자가 PDF 링크를 클릭하면 왜 자동으로 다운로드되고 URL에서 열리지 않나요?

1개의 좋아요

이 컴포넌트를 iframe 라이트박스(iframe lightboxes)와 함께 사용 중인 분 중, PDF 미리보기 위에 “전체 화면으로 확장” 화살표가 여전히 표시되는지 확인해 주실 수 있을까요?

참고로, 2023년에는 정상적으로 작동했습니다…

1개의 좋아요

아니요. 사용되지 않습니다.

2개의 좋아요

좋은 생각이에요. 정말 도움이 될 테니까요.

3개의 좋아요

우리는 사이트에 이 TC를 사용하며 매우 유용하다고 생각합니다. 오늘 PDF를 포함하는 주제를 생성하고 공유했는데, 이 괴물이 만들어졌습니다: 인라인 PDF로, 언퍼플(unfurl)에서 완전히 탐색할 수 있습니다.

1개의 좋아요

특정 카테고리에서만 이 기능을 활성화할 수 있는 방법이 있을까요? 여러 파일을 나열하는 주제를 만들고 있는데, PDF가 자동으로 펼쳐져서 보기 좋지 않습니다. 특수 문자를 입력하는 것처럼 수동으로 트리거를 방지할 수 있는 방법이라면 그것도 괜찮습니다.

1개의 좋아요

무엇의 트리거 발동을 방지하려는 건가요? 선택한 카테고리에서 PDF가 어떻게 표시되길 원하시나요?

1개의 좋아요

PDF가 인라인으로 표시되는 것을 차단하는 방법을 찾고 있습니다. 차단된 경우, 해당 PDF는 다른 게시 첨부파일처럼 표시되어야 합니다.

단순 링크로? 아니면 원박스(Onebox)로? 아니면 어떻게?

1개의 좋아요

PDF 링크 이름 앞에 공백을 하나만 입력하면 됩니다. 이 부분은 잘 문서화되어 있지 않았지만(방금 그 부분을 다뤘습니다), 저는 이전에도 같은 이유로 TC에 해당 기능이 추가되도록 처리한 바 있습니다.

원래는 Oneboxes처럼 마크다운에서 링크 앞에 공백을 넣는 방식이었으면 좋겠지만, 현재 방식도 충분히 잘 작동합니다.

7개의 좋아요

안녕하세요

이 플러그인으로 인해 오류가 발생하고 있습니다.

원인에 대해 어떤 아이디어가 있으신가요?

https://forums.ffjdr.org/t/test-dun-pdf-en-visibilite/2691

1개의 좋아요

모든 PDF에서 발생하는 건지, 아니면 이 파일에서만 발생하는 건가요?

포럼 도메인을 allowed internal hosts에 추가해 보셨나요?

2개의 좋아요

네, 모든 PDF 파일에 대해 해당됩니다.

'internal host’에 추가해 보았지만 개선되지 않았습니다.

조언해 주셔서 감사합니다 :slight_smile:

그 외 Chrome 콘솔에서 이 오류 메시지를 발견했습니다:

initialize-for-pdf-preview.js:84 ‘blob:https://forums.ffjdr.org/79cf20bf-65ac-460f-b0b0-73c10bf85890’ 프레임을 거부했습니다. 다음 Content Security Policy 지시문 "default-src ‘self’ data: https:"을 위반했기 때문입니다. 'frame-src’가 명시적으로 설정되지 않았으므로 'default-src’가 폴백으로 사용됩니다.

로컬 리소스를 로드할 수 없습니다: blob:https://forums.ffjdr.org/79cf20bf-65ac-460f-b0b0-73c10bf85890

2개의 좋아요

allowed onebox iframes 설정을 확인해 보세요. *로 설정되어 있어야 합니다.

3개의 좋아요

이 컴포넌트를 방금 설치했습니다. 설치에 취한 단계는 다음과 같습니다. 제 환경은 S3(Digital Ocean Spaces)와 CDN(Bunny.net)입니다.

Chrome 개발자 도구(F12)를 사용하면 설정을 하는 데 큰 도움이 됩니다. 네트워크 탭을 클릭하여 PDF가 CORS에 의해 차단되고 있는지 확인하세요.

Digital Ocean 설정

  1. Spaces 설정으로 이동하여 CORS 구성 추가를 클릭합니다.
  2. 설정:
Origin:   Discourse URL - 전체 https://discourse.url 사용
Allowed Methods:  GET 및 HEAD
다음 헤더를 추가합니다:
      Access-Control-Allow-Methods 
      Access-Control-Allow-Origin
      Origin
      Range
Access Control Max Age: 0
  1. 제 화면은 다음과 같았습니다:

  2. 저장하고 메인 화면에서 확인합니다.

CDN (Bunny.net) 설정

CDN에 *.pdf 파일 형식에 대해 CORS 헤더를 전달하도록 지정해야 했습니다.

  1. CDN을 선택하고 헤더 옵션을 찾습니다.
  2. "CORS 헤더 추가"를 켭니다.
  3. 파일 확장자에 PDF를 추가합니다.
  4. 저장합니다.

이 두 가지 설정을 완료한 후 모든 것이 잘 작동했습니다.

다른 도구를 사용하고 있을 수 있지만, 이 정보가 문제 해결이나 발생 가능한 문제 해결에 도움이 될 수 있습니다.

2개의 좋아요

인라인 PDF에 대한 추가적인 “새 탭에서 열기” 옵션을 말씀드린 건데요. @nathank 님은 시간이 나지 않으신 것 같네요?

우리는 디스코스를 기업용 인트라넷으로 사용하고 있어 이 문제가 여전히 시급합니다.

1개의 좋아요

바빠졌고, 저는 아마추어 수준이라 시간이 오래 걸릴 거예요. 그래서 그 뒤로는 다른 일을 하러 갔죠…

Contribute > Feature 채널에서 구체적으로 언급하거나, 개발자에게 비용을 지불해 PR을 진행하도록 하는 것도 도움이 될 수 있습니다.

2개의 좋아요

브라우저의 개발자 콘솔에서 이 멋진 테마 컴포넌트에 대한 비추천(deprecation) 알림을 받았습니다:

[THEME 30 ‘PDF previews’] 비추천 알림: 사이트 초기화 동안 site.mobileView 또는 site.desktopView에 액세스하면 브라우저 창이 조정될 때 오류와 불일치가 발생할 수 있습니다. 이러한 확인은 페이지 렌더링 중에 실행되는 컴포넌트, 트랜스포머 또는 API 콜백으로 이동하십시오. [Discourse 3.5.0.beta9-dev 이후 비추천] [deprecation id: discourse.static-viewport-initialization] [info: Designing for Different Devices (Touch & Hover)]

3개의 좋아요

위에서 언급된 비추천(deprecation) 통보를 제 PR에서 이 기능 요청을 통해 처리했습니다. 이 PR은 PDF 링크의 동작을 개선하여 항상 새 탭에서 열리도록 하며, 해당 주제에서 제기된 여러 우려 사항을 해결합니다.

구체적으로 말하면, 모바일에서는 이제 한 번의 탭으로 PDF 콘텐츠에 접근할 수 있게 되었습니다(이전에는 여러 번의 탭, 대기 시간 등이 필요했습니다). 또한 데스크톱 환경에서도 이러한 동작이 원할 때 유용합니다.

수정과 새로운 기능을 함께 포함시킨 것은 다소 무례한 일일 수 있지만, 동작을 변경하기 위해 모바일 감지 로직을 수정해야 했기 때문에 어쩔 수 없었습니다.

5개의 좋아요

데스크톱에서 PDF 미리보기가 여전히 인라인으로 표시되나요?